package com.punch.common.dto.user.user;

import com.punch.common.vo.user.user.OrgCertificationVO;
import com.punch.common.vo.user.user.UserExtendVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;

/**
 * @author tanchangguo
 * @email 17607195327@163.com
 * @date 2020-07-21 19:10:02
 */
@Data
@ApiModel(value = "新增用户")
public class UserDTO implements Serializable {


    @ApiModelProperty(value = "userId")
    private Long userId;


    @ApiModelProperty(value = "登录名")
    private String loginName;

    @ApiModelProperty(value = "用户名称", required = true)
    private String username;


    @ApiModelProperty(value = "角色", required = true)
    @NotNull(message = "角色不能为空")
    private Integer roleId;


    @ApiModelProperty(value = "区域id", required = true)
    @NotNull(message = "区域id不能为空")
    private Integer areaId;


    @ApiModelProperty(value = "区域", required = true)
    @NotEmpty(message = "区域不能为空")
    private String areaName;

    @ApiModelProperty(value = "登录账号/手机号", required = true)
    @NotBlank(message = "登录账号/手机号不能为空")
    @Size(max = 11, min = 11, message = "请输入正确的手机号")
    private String mobile;


    @ApiModelProperty(value = "头像")
    private String headImgUrl;

    @ApiModelProperty(value = "性别 0：女  1：男")
    private Integer sex;

    /**
     * 详细地址
     */
    @ApiModelProperty(value = "详细地址")
    private String address;

    /**
     * 用户结算信息
     */
    private UserExtendVO userExtendVO;

    /**
     * 机构资质信息
     */
    private OrgCertificationVO orgCertificationVO;

    private String remarks;


}
